package com.example.lvsuo.entity.vo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.Email;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import java.io.Serializable;

@Data
@EqualsAndHashCode(callSuper = false)
public class ClientVo implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 客户名
     */
    @Pattern(regexp ="^[\\u4e00-\\u9fa5]{2,4}$", message = "姓名为2-4字！")
    private String client;

    /**
     * 手机
     */
    @Pattern(regexp ="^1([358][0-9]|4[579]|66|7[0135678]|9[89])[0-9]{8}$", message = "请输入有效电话！")
    private String phone;

    /**
     * 类型
     */
    @NotNull
    private String type;

    /**
     * 类型描述
     */
    @NotNull
    private String typeinfo;

    /**
     * 身份证号
     */
    @Pattern(regexp = "^([1-6][1-9]|50)\\d{4}(18|19|20)\\d{2}((0[1-9])|10|11|12)(([0-2][1-9])|10|20|30|31)\\d{3}[0-9Xx]$",message = "身份证号无效!")
    private String cardnum;

    private String principal;

    private String contact;

    /**
     * 邮件
     */
    @Email(message = "邮箱格式不正确!")
    private String email;

    private String duty;

    private String affectedareas;

    /**
     * 电话
     */
    private String tel;

    /**
     * 地区
     */
    private String pertainarea;

    /**
     * 状态
     */
    private Integer status;

    private String legalperson;

    private String legalpersontel;

    /**
     * 文件
     */
    private String file;

    /**
     * 民族
     */
    @NotNull
    private String nation;

    /**
     * 性别
     */
    @NotNull
    private String sex;

    /**
     * 生日
     */
    private String birth;

    /**
     * 详细地址
     */
    private String address;

    /**
     * 描述
     */
    private String remark;

    /**
     * 添加时间
     */
    @NotNull
    private String addtime;

    /**
     * 负责用户id
     */
    private Integer systemUserId;

    private Integer assign;

    /**
     * 文件地址
     */
    private String fileurl;
}
